関数型言語テイスティング: Haskell, Scala, Clojure, Elixirを比べて味わう関数型プログラミングの旨さ
言語を問わず実践可能
関数型プログラミングスタイルが ユビキタス な言語 関数
https://gyazo.com/cdc68b96adf2f5a816348092d74aa8bf
部分式(部分適用)を関数として抽出し、関数を組み合わせて(関数合成)式を構成する データ
https://gyazo.com/f50648c3e4bf453fbaa8db48b035cf84
また、データ型を定義したり、構築したり、分解することが可能
https://gyazo.com/7e4179890dc0725862653bfe5533b440
純粋関数やイミュータブルなデータを前提とすると、評価の順序やタイミングの自由度が高まる
(FPL に限った話ではないが)マクロ でも評価の制御は可能 https://gyazo.com/f048188ee6db591388b24016886f611c
https://gyazo.com/d58e76a420d7233ae498834a677f0749
適切な制約は解放をもたらす
引数に対して戻り値を返す以外のことをする関数は信頼できない → 純粋関数
取りうる値が分からないのは不安 → 不正値を表現不能に、より 型安全 に 単純で安定したブロックをベースに全体を構成したい